import pymysql.cursors
""" 
导入pymysql包来操作mysql数据库。
操作：对zabbix数据库下的所有表进行打印。
"""
c = pymysql.connect(host='172.23.8.199',
                    user='root',
                    password='***',
                    db='zabbix',
                    charset='utf8mb4',
                    cursorclass=pymysql.cursors.DictCursor) # DictCursor 返回的是一个字典对象。

values = []     # 存储所有表。

with c.cursor() as cc:
    sql = 'show tables;'
    size = cc.execute(sql)      # 获得所有表名，返回值是有多少个表。
    for i in range(size):
        d1 = cc.fetchone()      # 通过fetchone()来获得一行数据。
        for v in d1.values():
            values.append(v)

with c.cursor() as cc2:
    for v in values:
        sql = 'select * from {};'.format(v)     # 获取每个表中的所有数据，返回值是有多少行数据。
        size = cc2.execute(sql)
        for i in range(size):
            print(cc2.fetchone())               # 通过fetchone()来获得一行数据。
